lwIP TCP/IP 协议栈笔记之一:概述和目录结构详解

您所在的位置:网站首页 lwip socket数和内存消耗 lwIP TCP/IP 协议栈笔记之一:概述和目录结构详解

lwIP TCP/IP 协议栈笔记之一:概述和目录结构详解

2024-07-16 23:11| 来源: 网络整理| 查看: 265

目录

1. lwIP概述

1.1 TCP/IP 协议简介

1.2 lwIP 简介

1.2.1 目录结构 lwip-2.1.2

1.2.2 lwip-2.1.2/src

2 目录结构详解

2.1 /doc

2.2 /test

2.3 /src

2.3.1 APIs

2.3.2 /src/api

2.3.3 /src/apps

2.3.4 /src/core

2.3.5 /src/include

2.3.6 /src/netif

1. lwIP概述 1.1 TCP/IP 协议简介

TCP/IP协议(传输控制协议/互联网协议)不是简单的一个协议,而是一组特别的协议,包括:TCP,IP,UDP,ARP等,这些被称为子协议。在这些协议中,最重要、最著名的就是TCP和IP。因此,大部分网络管理员称整个协议族为“TCP/IP”。

国际标准组织将整个以太网通信结构制定了OSI模型,总共分层七个层,分别为应用层、表示层、会话层、传输层、网络层、数据链路层以及物理层,每个层功能不同,通信中各司其职,整个模型包括硬件和软件定义。OSI模型是理想分层,一般的网络系统只是涉及其中几层。

TCP/IP是互联网最基本的协议,是互联网通信使用的网络协议,由网络层的IP协议和传输层的TCP协议组成。TCP/IP只有四个分层,分别为应用层、传输层、网络层以及网络访问层。虽然TCP/IP分层少了,但与OSI模型是不冲突的,它把OSI模型一些层次整合一起的,本质上可以实现相同功能。

 实际上,还有一个TCP/IP混合模型,分为五个层,参考下图 ,它实际与TCP/IP四层模型是相通的,只是把网络访问层拆成数据链路层和物理层。这种分层方法对我们学习理解更容易。

设计网络时,为了降低网络设计的复杂性,对组成网络的硬件、软件进行封装、分层,这些分层即构成了网络体系模型。在两个设备相同层之间的对话、通信约定,构成了层级协议。设备中使用的所有协议加起来统称协议栈。在这个网络模型中,每一层完成不同的 任务,都提供接口供上一层访问。而在每层的内部,可以使用不同的方式来实现接口,因而内部的改变不会影响其它层。

在TCP/IP混合参考模型中,数据链路层又被分为LLC层(逻辑链路层)和MAC层(媒体介质访问层)。目前,对于普通的接入网络终端的设备, LLC层和MAC层是软、硬件的分界线。

1.2 lwIP 简介

lwIP(A Lightweight TCP/IP stack)是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。LwIP是Light Weight (轻型)IP协议,有无操作系统的支持都可以运行。LwIP实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用,它只需十几KB的RAM和40K左右的ROM就可以运行。这样就可以让lwIP适用于资源有限的小型平台例如嵌入式系统。

目前 lwIP 最新版本 2.1.2

官网:http://savannah.nongnu.org/projects/lwip/

官方下载地址:http://download.savannah.nongnu.org/releases/lwip/

lwIP 主要特性:

  *IP(Internet协议,IPv4和IPv6),包括通过多个网络接口的数据包转发   ICMP 用于网络维护和调试(Internet控制消息协议)   IGMP 用于多播流量管理(因特网组管理协议)   *MLD(IPv6的多播侦听器发现)。旨在符合RFC 2710.不支持MLDv2   ND(IPv6的邻居发现和无状态地址自动配置)。旨在符合RFC 4861(邻居发现)和RFC 4862(地址自动配置)   DHCP,AutoIP / APIPA(Zeroconf)和(无状态)DHCPv6   UDP(用户数据报协议),包括UDP-lite扩展    TCP(传输控制协议)具有拥塞控制,RTT估计快速恢复/快速重传和发送SACK   RAW/NATIVE API以提高性能   可选的Berkeley-socket API    TLS:可选的分层TCP(“altcp”),用于任何基于TCP的协议(移植到mbedTLS)的近乎透明的TLS(有关详细信息,请参阅changelog)    PPPoS和PPPoE(串口/以太网上的点对点协议)   DNS(域名解析器,包括mDNS)   6LoWPAN(通过IEEE 802.15.4,BLE或ZEP) 1.2.1 目录结构 lwip-2.1.2

下载并解压,目录结构如下:

 

src/      -  lwIP TCP/IP 协议栈 源码.

doc/      -  lwIP 文档.

双击打开,既可以查看相关文档

test/      -  测试相关

1.2.2 lwip-2.1.2/src

api/        -  高级封装 API 的代码。如果您使用低级 回调/raw API ,则不需要。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3